Программа для расчёта конструкций RFEM 6 является основой нашей модульной системы программного обеспечения. Основная программа RFEM 6 используется для задания конструкций, материалов и нагрузок плоских и пространственных конструктивных систем, состоящих из плит, стен, оболочек и стержней. Программа также позволяет создавать комбинированные конструкции, а также моделировать тела и контактные элементы.
RSTAB 9 - это мощная программа для расчёта и проектирования 3D конструкций балок, каркасов или ферм, которая которая помогает инженерам-строителям соответствовать современным требованиям и отражает последние тенденции в области строительного проектирования.
Вы часто тратите слишком много времени на расчёт сечений? Программное обеспечение Dlubal и автономная программа RSECTION облегчают вашу работу, определяя характеристики и выполняя расчёт напряжений для различных сечений.
Вы всегда знаете, откуда дует ветер? Конечно, со стороны инноваций! RWIND 2 - это программа, которая использует цифровую аэродинамическую трубу для численного моделирования потоков ветра. Программа моделирует эти потоки вокруг зданий любой геометрической формы и определяет ветровые нагрузки на поверхности.
Вам нужен обзор зон снеговой, ветровой и сейсмической нагрузок? Тогда вы находитесь по адресу. Используйте инструмент Geo-Zone Tool для быстрого и лёгкого определения снеговых нагрузок, скоростей ветра и данных по сейсмике в соответствии с ASCE 7‑16 и другими нормативами различных стран.
Хотите попробовать в работе функции программ Dlubal Software? У вас есть такая возможность! Бесплатная полная версия на 90 дней позволяет вам в полной мере попробовать в работе все наши программы.
При программировании через интерфейс COM, доступны для узловой опоры функции «ReferenceSystem» и «UserDefinedReferenceSystem». Причем с помощью функции «ReferenceSystem» можно сначала определить тип пользовательской системы координат (например, «Повернутая» или «Система координат»), а затем, в зависимости от выбранного типа, задать данный тип системы посредством команды «UserDefinedReferenceSystem».
В следующем примере была в качестве типа системы установлена «Система координат», для которой была создана также пользовательская система координат:
// create user defined coordinate systemIGuideObjects iGuide = iModel.GetGuideObjects();// delete cosy No 2UserCoordinateSystem[] csList = iGuide.GetCoordinateSystems();if (csList.Length > 1){for (int i = 0; i < csList.Length; ++i){if (csList[i].No == 2){iGuide.PrepareModification();iGuide.DeleteObjects(GuideObjectType.CoordinateSystemObject, "2");iGuide.FinishModification();}}}// define new cosy No 2UserCoordinateSystem uCs = new UserCoordinateSystem();uCs.Name = "test";uCs.Comment = "test";uCs.No = 2;uCs.IsValid = true;uCs.Origin.X = 1;uCs.Origin.Y = 0;uCs.Origin.Z = 1;uCs.Point1.X = 2;uCs.Point1.Y = 0;uCs.Point1.Z = 1;uCs.Point2.X = 1;uCs.Point2.Y = 1;uCs.Point2.Z = 2;// set cosy No 2iGuide.PrepareModification();iGuide.SetCoordinateSystem(uCs);iGuide.FinishModification();// create nodal support with user defined cosyNodalSupport ns = new NodalSupport();ns.SupportConstantX = -1;ns.SupportConstantY = -1;ns.SupportConstantZ = -1;ns.RestraintConstantX = -1;ns.RestraintConstantY = 0;ns.RestraintConstantZ = -1;ns.Comment = "user defined cosy";ns.NodeList = "1";ns.ReferenceSystem = ReferenceSystemType.UserDefinedSystemType;ns.UserDefinedReferenceSystem.ObjectNo = 2;ns.UserDefinedReferenceSystem.Type = UserDefinedAxisSystemType.DefinedCoordinateSystemType;iModData.PrepareModification();iModData.SetNodalSupport(ns);iModData.FinishModification();
Для создания системы координат потребуется наличие интерфейса для вспомогательных объектов: 'IGuideObjects'. С помощью функции «DeleteObjects()» потом сначала удалится существующая система координат номер 2, а затем посредством функции «SetCoordinateSystem()» создастся новая. Не забудьте также обратить внимание на блок «Prepare/Finish-Modification», благодаря которому можно добавлять новые элементы.
Узловая опора затем передается через интерфейс «IModelData». Здесь тоже потребуется блок «Prepare/Finish-Modification».
Все элементы модуля STEEL EC3, которые можно изменить посредством интерфейса COM указаны в следующем коде:
// get interface to active modeliModel = iApp.GetActiveModel();// get interface to STEEL EC3 moduleIModule module = iModel.GetModule("STEEL_EC3") as Dlubal.STEEL_EC3.IModule;// get interface to module caseICase iStEC3case = module.moGetCase(1, Dlubal.STEEL_EC3.ITEM_AT.AT_NO);// get ultimate limit state options (Details > Ultimate Limit State)ULS_OPTIONS optsULS = iStEC3case.moGetULSOptions();// get options for stability design (Details > Stability)STABILITY_OPTIONS optsStab = iStEC3case.moGetStabilityOptions();// get options for serviceability design (Details > Serviceabiltiy)SERVICEABILITY_DEFORMATION_TYPE optsServDef = iStEC3case.moGetServiceabilityOptions();// get fire resistance options (Details > Fire Resistance)FIRE_RESISTANCE_OPTIONS optsFire = iStEC3case.moGetFireResistanceOptions();// get other options (Details > General)OTHER_OPTIONS optsOther = iStEC3case.moGetOtherOptions();//получить национальное приложение (например, DIN, CEN, ...)NATIONAL_ANNEX natAn = iStEC3case.moGetNationalAnnex();// get interface for national annex detailsINationalAnnex iNatAn = iStEC3case.moGetNationalAnnexOptions();// get base data for national annexNATIONAL_ANNEX_OPTIONS_BASE natAnBase = iNatAn.moGetBaseOptions();// get data for general method from national annexNATIONAL_ANNEX_OPTIONS_GM natAnGM = iNatAn.moGetGMOptions();// get data for lateral-torsional buckling from national annexNATIONAL_ANNEX_OPTIONS_LTB natAnLTB = iNatAn.moGetLTBOptions();// get data for stainless steel from national annexNATIONAL_ANNEX_OPTIONS_STEEL natAnSTEEL = iNatAn.moGetSteelOptions();
Все соответствующие элементы диалогового окна «Параметры» для данного дополнительного модуля затем показаны на Рисунке 02.
Способ создания узловой опоры с диаграммой нелинейности показан в следующем макросе VBA. Исходный код затем находится в разделе Загрузки.
Для задания расчётных длин в RFEM 6 есть два варианта. First, edit the member and navigate to the "Design Types" Tab. Second, create a new effective lengths definition.
Third, set whether you would like to calculate the critical moment according to the Eigenvalue method or Chapter F from the AISC. Fourth, navigate to the "Nodal Supports and Effective Lengths" tab. Within this tab there are two different methods that can be used.
Метод 1: Узловые опоры и расчетные длины
Referencing Member No. 1 in the attached model, for this column you can see a how the effective lengths for the Start, End, and Intermediate nodes are defined. First, click on Select Member or Member Set and then select the member. This will activate the intermediate nodes along the member length in the table. Next, check whether the node can move in the y/z axis (weak/strong axis), rotate about its local x-axis (torsion), and about its local z-axis (LTB).
The Warping (ω) input options will adjust the effective length for LTB, similar to the rotational z-axis restraint. For Ch. F calculations, the warping can be fully restrained or released. For Eigenvalue calculations, in addition to the fully restrained or released option, there is also the ability to set partial fixity with a warping spring constant.
Top and bottom flanges can also be restrained separately by fixing the y-axis and by releasing (unchecking) the rotation about the local x-axis restraint (torsion).
Метод 2: "K" Factors and Absolute Values
Referencing Member No. 5 in the attached model, the effective length factors can be used to define the unbraced length directly and/or apply the appropriate member end conditions. To adjust the unbraced lengths directly instead of utilizing the nodes on the member (Method 1), the "K" factors can be entered manually in the table below. Or the "Absolute Values" can be entered by selecting the option "Absolute Values". Then the unbraced length itself can be entered manually instead. This method is best used when there are no intermediate nodes currently present on the member.
Следующий макрос VBA показывает создание узловой опоры с нелинейностью «Частичная активность». Исходный код затем находится в разделе Загрузки.
Option Explicit
' --------------------------Sub SetNSupports()' --------------------------Dim model As RFEM5.modelDim data As IModelDataDim support(0) As RFEM5.NodalSupportDim ISup As RFEM5.INodalSupportDim ISupPA как RFEM5.IPartialActivityDim nlPA как частичная активность
e: If Err.Number <> 0 Then MsgBox Err.Description, , Err.Source
End Sub